perm filename Q.SAI[1,BGB] blob sn#094574 filedate 1974-04-02 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	BEGIN "Q"
C00004 ENDMK
C⊗;
BEGIN "Q"
	REQUIRE "ABBREV[SYS,BGB]" SOURCE_FILE;
	REQUIRE "DPYIII[SYS,BGB]" SOURCE_FILE;
	ITG CNT1,CNT2;
	DEFINE Q⊂="QUICK_CODE";

	SHORT ITG X,Y,VX,VY,AX,AY;
	LABEL SA,B;
	SAFE INTEGER ARRAY DPYBUF [0:1000];
	ITG P;SAFE INTEGER ARRAY PDL[0:100];

	FOR X←1 TO 40 DO OUTSTR(↓);X←600;
B:	Q⊂ LABEL L;MOVE PDL;MOVEM P;
	MOVEI SA;HRLI '400001;'047000400003;JFCL;JFCL;
	L: MOVEI 10,20;'047000000031 10,;JRST L;⊃;

SA:	Q⊂ LABEL L1,L2;AOS CNT1;MOVE '17,PDL;JRST 3,@L1;L1: L2;L2:⊃;
	IF X>500 THEN ⊂ X ← -500; Y←500; VX ← 3; VY ← 0;⊃;
BEGIN
	VY ← VY - 2;
	X ← X + VX;
	Y ← Y + VY;
	IF Y<-500 THEN ⊂ VY ← ABS(VY*0.85);Y ← -500+VY;⊃;
	DPYSET(DPYBUF);
	AIVECT(-500,-500);
	AVECT(+500,-500);
	AVECT(+500,+500);
	AVECT(-500,+500);
	AVECT(-500,-500);
	AIVECT(X+10,Y); AVECT(X+7,Y+7);
	AVECT(X,Y+10); AVECT(X-7,Y+7);
	AVECT(X-10,Y); AVECT(X-7,Y-7);
	AVECT(X,Y-10); AVECT(X+7,Y-7);
	AVECT(X+10,Y);
	DPYOUT(1);
	Q⊂ AOS CNT2;JRST 4,;⊃;
END;
END;